1. Field of the Invention
The invention relates to satellite positioning receivers such as GPS (Global Positioning System) receivers.
2. Discussion of the Background
The GPS system uses a constellation of satellites which move around the earth on very precisely determined orbits, that is to say it is possible to know the position of an arbitrary satellite at any time. The satellites transmit radiofrequency signals, containing navigation data and codes which make it possible to identify each satellite. These codes phase modulate a carrier frequency. A GPS receiver, on the ground or on a land, air or sea vehicle, can receive the signals from several satellites simultaneously, precisely calculate its distance from each of the satellites, and deduce therefrom its precise position in latitude, longitude and altitude in a terrestrial frame. It can also deduce therefrom the precise date and time of the reception in the time frame of the GPS system. It can lastly deduce therefrom, by Doppler measurements, its own velocity vector in the terrestrial frame (the case of a receiver mounted on a moving vehicle).
In the GPS system, each satellite is identified by a pseudo-random code which is individual to it and repetitively (for example every millisecond) modulates a carrier frequency which the satellite transmits. There are systems similar to GPS, in particular the GLONASS system, in which this pseudo-random code also exists even though it is not used to identify individual satellites. The invention which will be described is directly applicable to the GLONASS system, but for the sake of simplicity reference will be made below only to the GPS system, and more precisely the "civil" part of the GPS system which also has a military part to which the invention is equally applicable.
The pseudo-random code is a long code (1023 bits at 1.023 MHz, i.e. 1 millisecond), and one of its main functions is to make it possible to extract the satellite's signal from a noise level much higher (for example 30 dB) than the level of the signal. This technique is now widely known as spread spectrum transmission. The signal is extracted from the noise using an operation, in the receiver, of correlation between the received signal and a periodic pseudo-random code which is identical to the one expected to be found in the signal. If the codes do not coincide temporally, there is no correlation between the received signals and the local code generated by a local code generator; if they almost coincide, there is some degree of correlation, the correlation energy becoming stronger as the coincidence becomes more exact. It is therefore possible to establish a correlation signal making it possible to slave the local code generator until exact coincidence is obtained between the local code and the code modulating the signal which the satellite transmits. A code slaving loop then makes it possible to maintain this coincidence.
The pseudo-random code is transmitted by the satellite at extremely precise times which are known at the receiver. Use is made of the correlation operation to determine the arrival time of this code in the receiver: the characteristic time or epoch of transmission of the local code is determined, and since this local code coincides with the received code when the maximum correlation is established, this time represents the arrival time of the received code. The difference between a time at which the code is transmitted via the satellite and a time at which the code is received by the receiver makes it possible to determine a propagation time of the signals between the satellite and the receiver. Knowing that the propagation velocity of the signals is the velocity of light, the distance between the receiver and a given satellite can be calculated. The same operation performed on two other satellites makes it possible, by triangulation, to determine the exact position of the receiver relative to the three satellites.
By using a fourth satellite, the clock errors of the receiver are eliminated, the clock of the receiver not being as precise as that of the satellites. Further to the position of the receiver, it is then possible to calculate a precise time for the position measurement, in the time frame of the GPS satellites.
The position of each of the satellites is known at any time: it is calculated on the basis of tables which are stored in the receiver and are updated by the navigation message broadcast by the satellites. The velocity of the satellites at any time can also be calculated on the basis of these tables.
It is possible to determine, on the basis of the signals sent by four satellites, the time and the position of the receiver relative to the four satellites. Furthermore, by changing co-ordinates, the position of the receiver in a fixed terrestrial frame is obtained.
Similarly, the velocity of the receiver is calculated on the basis of a Doppler-effect measurement on the carrier frequency of the radiofrequency signal sent by the satellites. It is therefore possible to calculate the relative velocity of the receiver with respect to each of the satellites, along the director axis which joins this satellite to the receiver. Four satellites are needed to eliminate the time ambiguity. Four different relative velocity vectors are obtained, along the director axes joining the receiver to the four satellites. Simple calculations make it possible to determine the velocity of the receiver along three axes in the terrestrial frame on the basis of these four velocity vectors and the following information:
the directions of the receiver-satellite director axes with respect to a fixed terrestrial frame (longitude, latitude, altitude); these directions are themselves obtained by knowledge of the position of the receiver at a given time and the position of each satellite at the same time; PA1 the individual velocities of the satellites in the terrestrial frame at this time. PA1 product of the current velocity (in practice the velocity at the current time or at the preceding time) multiplied by the time interval dT separating the two successive times at which the corrected position is calculated, and PA1 product of the difference between the measured position and the corrected position calculated at the preceding time, multiplied by a coefficient less than 1.
In view of the necessary compromise between the dynamic response and the noise performance of the code slaving loops, it is difficult to obtain more than one position measurement per second (a measurement deduced from the code-based measurements). In certain applications of GPS receivers, this rate may be insufficient. This might be the case, for example, if a GPS receiver were to be used by an aircraft in automatic pilot mode in a landing approach phase; this is why the use of GPS receivers is not currently envisaged in this case. This is, however, regrettable because a GPS receiver would otherwise have all the qualities required for it to be used in this type of application.